#ifndef REGISTER_H_INCLUDED
#define REGISTER_H_INCLUDED

/**
* @file rotate_image.h
*
*	 Nel file rotate_image.h viene definito il servizio che si occupa di\:
*	   - ricevere un immagine dal client
*	   - ruotare l'immagine (verso sx o verso dx)
*	   - salvare l'immagine ruotata sul Service Provider
*	 Questa libreria deve quindi essere presente su tutti i Service Provider che intendono
*	 fornire questo tipo di servizio.
*
* @author Favale Angelo
* @author Fagioli Alessio
*
* @version 1.0
*/

#include "CImg.h"
#include "../libreria.h"

/**
* @class Rotate_Image
*
*	 La classe Rotate_Image implementa la ricezione e la successiva rotazione di 
*	 un'immagine dal client al Service Provider
*/

class Rotate_Image : public Service
{
	
	public:	 
		/**
		* @param client Contiene le informazioni per poter contattare il client
		*
		* Il costrutture si preoccupa di registrare i dati relativi al client che
		* intende richiedere questo servizio
		*/
		Rotate_Image(host client);
		/**
		* @param nome_file Nome del file inviato dal client
		* @param direzione Indica il verso di rotazione.
		*		   Se vale 1 ruota l'immagine di 90° a sinistra, altrimenti
		*		   la ruota a destra
		*
		* Questo metodo si occupa di ruotare l'immagine ricevuta dal client
		* e di salvarla sul Service Provider ruotata in una certa direzione
		*/
		
		void Rotate_image (char * nome_file,char * direzione); //riceve immagine dal service_provider e la reinvia ruotata
		
		
};


#endif
